草庐IT

SQLite 语法

全部标签

javascript - 用于查找基本 Javascript 语法错误的命令行工具?

是否有任何命令行Linux工具可以捕获我的Javascript文件中的基本语法错误和编译时错误,即使所述Javascript文件是为在网络浏览器中使用而编写的?我通常在用Ruby或Perl编写服务器端代码的同时编写Javascript。如果我可以像测试服务器端Ruby和Perl一样部分测试客户端Javascript,那将为我节省大量时间——在命令行上,通常是在emacs中。我不希望在服务器上捕获运行时JavaScript错误,只是一些基本的错误,例如变量名称输入错误或某处的额外括号或失控的字符串,这些是在实际尝试执行代码之前可以发现的错误。我现在测试/调试Javascript所做的是“

javascript - ES2015模块导入导出语法错误

在ES6中使用导入导出时,出现以下错误:SyntaxError:exportdeclarationsmayonlyappearattoplevel我上网寻找解决此问题的方法,但我做不到。任何人都可以解释一下。我是ES6的新手,尤其是导入和导出。(我完全使用StealJS来处理这种东西)谢谢!js文件是:应用程序.jsimport{cube,cubeRoot}from'functions';console.log(cube(4));console.log(cubeRoot(125));函数.js//functions.jsfunctioncube(a){returna*a*a;}func

Javascript:[] = 5,没有语法错误?为什么?

是的,它在我的Firebug控制台中有效。为什么像这样的东西不会出现语法错误?[]=5;[]=doThis();[]=(function(){})();只是好奇为什么允许这样做。 最佳答案 看起来FF中的Javascript允许使用匹配赋值,因此您可以一次设置多个变量:[x,y]=[5,6];//setsxto5andyto6“显然”,一些JS实现非常宽容,会默默地忽略任何额外的值,所以这样做也是一样的:[x,y]=[5,6,7];这不会分配任何东西:[]=[5,6,7];最重要的是,看起来FF甚至愿意处理根本不匹配数组的情况:[x

javascript - ECMAScript 6 在对象解构中扩展了语法。支持 TypeScript 和 Babel

以下是有效的ECMAScript6吗?最新版本的Babel似乎支持它,但TypeScript不支持它。我找不到任何处理这种情况的ES6引用资料。vara={foo:'foo'};varb={...a}; 最佳答案 不,这不是有效的ECMAScript6。ES6只支持函数参数和数组解构中的剩余语法,以及函数调用和数组构造中的扩展语法。ItseemstobesupportedbythelatestversionofBabelBabel确实实现了objectRestSpreadES7proposal作为experimentalplugin

javascript - JSHint 无法识别 Visual Studio Code (VSCode) 中的 Async/Await 语法

我一直在努力使用VSCode和JSHint来寻找摆脱这种语法高亮显示的方法。似乎JSHint无法识别Async/Await语法。在这里您可以找到我正在谈论的内容的屏幕截图。我的JSHint版本:jshint-esnextv2.7.0-3 最佳答案 在visualstudiocode中,JSHint和ESLint相互抵消。所以如果你想在vscode中使用异步函数,那么你必须禁用Jshint并启用eslint。 关于javascript-JSHint无法识别VisualStudioCode(

javascript - 在没有 $scope 的情况下使用 $watch( Controller 作为语法)

在Angular1.3中,可以使用this.foo='bar'代替$scope.foo='bar'。现在,如何在没有$scope的情况下使用$watch? 最佳答案 在使用controlleras语法时,有几个选项可以避免必须使用$watch。以下示例摘自blogpostIwroteaboutavoiding$scope.使用ng-changeIfyouhaveawatchsetuptolistenforapropertychangethatoriginatesfromaformfield,thenng-changeisyourbe

javascript - Angular UI-Router 缩小错误 - 如何将解析语法更改为基于字符串注入(inject)?

我正在使用带有解析函数的AngularUI-Router,但是当我缩小解析函数时,我的整个应用程序都崩溃了,因为解析函数语法不适合缩小。它需要是基于字符串注入(inject)的概述here.我只是不确定如何写它。有什么建议吗?//ResolvesvarcheckAuthentication=function($q,$location,$rootScope,Users){if($rootScope.user)returntrue;if(!$rootScope.user){vardeferred=$q.defer();Users.get(null,function(user){if(!us

javascript - 语法错误 : Unexpected token N in chrome console from angularjs

您好,我通过chrome控制台使用angularjs时遇到此错误:SyntaxError:UnexpectedtokenNatObject.parse(native)atfromJson(http://localhost:3000/assets/angular.js?body=1:803:14)at$HttpProvider.defaults.defaults.transformResponsehttp://localhost:3000/assets/angular.js?body=1:9471:18)athttp://localhost:3000/assets/angular.js?

javascript - 'javascript:' 前缀何时是有效语法?

我知道您可以在中为URL使用javascript:伪协议(protocol)标签。但是,我注意到Firefox和IE都将允许'javascript:'在中的javascript代码之前标签。这是有效的语法吗?它会改变范围规则吗?例子:我已经看过很多次了:HelloWorld!但这是合法/有效的语法吗?它有什么特别之处吗:javascript:alert('helloworld!'); 最佳答案 在href属性之外(它是一个协议(protocol)说明符),name:只创建alabel(例如可以与continue或break一起使用)

javascript - (function eval () {}) 如果函数体处于严格模式会抛出语法错误?

为什么这段代码会抛出错误?//globalnon-strictcode(functioneval(){'usestrict';});现场演示:http://jsfiddle.net/SE3eX/1/所以,我们这里有一个命名函数表达式。我想明确指出这个函数表达式出现在非严格代码中。如您所见,它的函数体是严格的代码。严格模式规则在这里:http://ecma-international.org/ecma-262/5.1/#sec-C相关项目符号是这个(它是列表中的最后一个):ItisaSyntaxErrortousewithinstrictmodecodetheidentifierseva